package testes.comum;

import static org.junit.Assert.assertEquals;

import org.junit.Test;

import comum.rn.RNExtremidade;
import comum.rn.RNPeca;
import comum.rn.RNSequenciaDomino;

public class RNSequenciaDominoTest {
	
	@Test
	public void testAddPeca(){
		RNPeca peca = new RNPeca(0, 1);
		RNSequenciaDomino sequenciaDomino = new RNSequenciaDomino();
		sequenciaDomino.addPeca(peca, RNExtremidade.DIREITA);
		assertEquals(sequenciaDomino.getPecas().get(0), peca);
		assertEquals(sequenciaDomino.getValorExtremidadeEsquerda(), peca.getLadoEsquerdo());
		assertEquals(sequenciaDomino.getValorExtremidadeDireita(), peca.getLadoDireito());
		
		RNPeca peca2 = new RNPeca(1, 3);
		sequenciaDomino.addPeca(peca2, RNExtremidade.DIREITA);
		assertEquals(sequenciaDomino.getValorExtremidadeDireita(), 3);
		assertEquals(sequenciaDomino.getValorExtremidadeEsquerda(), 0);		
	}
	
	@Test
	public void testgetExtremidadeEsquerda(){
		RNPeca peca = new RNPeca(0, 1);
		RNSequenciaDomino sequenciaDomino = new RNSequenciaDomino();
		sequenciaDomino.addPeca(peca, RNExtremidade.DIREITA);
		assertEquals(sequenciaDomino.getValorExtremidadeEsquerda(), peca.getLadoEsquerdo());		
	}
	
	@Test
	public void testgetExtremidadeDireita(){
		RNPeca peca = new RNPeca(0, 1);
		RNSequenciaDomino sequenciaDomino = new RNSequenciaDomino();
		sequenciaDomino.addPeca(peca, RNExtremidade.DIREITA);
		assertEquals(sequenciaDomino.getValorExtremidadeDireita(), peca.getLadoDireito());
	}
	

	}
